import os
import time
from pdf2docx import Converter

def pdf_to_word_pdf2docx(pdf_path, word_path):
    cv = Converter(pdf_path)
    cv.convert(word_path, start=0, end=None)
    cv.close()


def is_file_size_over_10MB(file_path):
    """
    检查指定文件的大小是否超过10MB。

    参数:
        file_path (str): 文件的完整路径。

    返回:
        bool: 如果文件大小超过10MB，则返回True；否则返回False。
    """
    file_size = os.path.getsize(file_path)
    return file_size > 10485760


def transform_files_in_folder(folder_path):
    """读取指定文件夹下所有文件并逐个上传"""

    if not os.path.isdir(folder_path):
        raise NotADirectoryError(f"{folder_path}不是一个有效的目录")

    for root, _, filenames in os.walk(folder_path):
        for filename in filenames:
            file_path = os.path.join(root, filename)
            if is_file_size_over_10MB(file_path):
                print(f"文件 {filename} 大小超过10MB，跳过。")
            else:
                word_path = os.path.splitext(file_path)[0] + '.docx'
                pdf_to_word_pdf2docx(file_path, word_path)
                time.sleep(2)


# 使用示例
if __name__ == "__main__":
    target_folder = "C://Users/jacki/Downloads/tempDir"
    transform_files_in_folder(target_folder)